import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import '@/assets/css/eliminate.css'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import request from "./utils/request";
import "./assets/css/gloable.css";
import echarts from 'echarts'
import VueRouter from 'vue-router'

Vue.prototype.$echarts = echarts
const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push(location, resolve, reject) {
  if ( resolve || reject ) return originalPush.call(this, location, resolve, reject)
  return originalPush.call(this, location).catch((e)=>{})
}
Vue.use(ElementUI);

Vue.config.productionTip = false
//main.js 引入request
Vue.prototype.requset = request
router.beforeEach((to, from, next) => {
  // 获取页面保存的token值
  const user = sessionStorage.getItem("user");
  //
  let log = 1 ; // 开始写垃圾代码

  // 如果没有获取到token，要访问非登陆页，则不让访问，加到登录页面
  if (!user) {
    // 如果没有token，并且访问的不是非登录页面，则下面把这个改成login又可以实现
    if ( to.path === '/login' || to.path ==='/Homepage') {
      // 否则别人请求的就是登录页面
      next()

    } else {
      // 跳转到目标路由
      next({ path: '/login' })
    }

  }
  // 进入到这里，则表示本地有用户信息
  else {
    // ==两个等号强比较  你这里是准备干嘛？如果是登录就允许放行，我们这里，不是登录成功，会放一个user对象到浏览器里面吗，你这里都可以取到user对象了
    // 你还拦截干嘛。那我就是多写了。。，也可以进行一次校验，验证，但是没必要，能跑就行
    next()
  }



})

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')
